//基本地址
var base_url = "http://47.108.73.57:8080/api/house/"
// var base_url = "http://localhost:8080/api/house/"

/* ----axious 封装-------*/


//   function get_1() {
//     return axios.get(base_url+'house_type');
//   }
//   //-----

//   function get_2() {
//     return axios.get(base_url+'house_type');
//   }
//   //-----
//   function get_3() {
//     return axios.get(base_url+'region_price');
//   }
//   //----

// function get_4() {
//     return axios.get(base_url+'countYear');
//   }

/*--------------axious  高并发----------------------------*/
//   axios.all([get_3(), get_4()])
//     .then(axios.spread(function (res3, res4) {
//     //   console.log(res1.data.data,res3.data.data,res4.data.data)
//     console.log(res3,res4)


//     axious_func1_2();//另一个并发请求



//     //-------
//     var data_3 = res3.data.data;
//       var data_4 = res4.data.data;
//      var x = [] ,y = [];

//      //--------------   

//         for(var i = 0;i<data_3.length;i++){//分离横纵轴数据
//             x[i] = data_3[i].region;
//             y[i] =data_3[i].price;
//         }
//         echarts_3(x,y);
//     //---------
//          x = [] ,y =[]
//         for(var i = 10;i<data_4.length;i++){//分离横纵轴数据
//                x[i- 10] = String(data_4[i].years).substring(2);
//                y[i-10] =data_4[i].num;
//            }
//            echarts_4(x,y)

//     }));


//     /*-----并发请求--------*/
//     function axious_func1_2(){
//         axios.all([get_1(), get_2()])
//     .then(axios.spread(function (res1, res2) {//获取 房屋类型统计 以及
//     console.log(res1,res2)
//     data_1 = res1.data.data;
//     data_2 = res2.data.data;

//     echarts_1(data_1) ;//直接传入 然后函数内处理

// }));
//     }



// axios.get(base_url + 'house_type')
//     .then(function (res) {

//         console.log(res.data.data)
//         echarts_1(res.data.data)
//         // ==========第二层
//         axios.get(base_url + 'region_price')
//             .then(function (res) {
//                 console.log(res.data.data)
//                 var data_3 = res.data.data;

//                 var x = [], y = [];

//                 //--------------   

//                 for (var i = 0; i < data_3.length; i++) {//分离横纵轴数据
//                     x[i] = data_3[i].region;
//                     y[i] = data_3[i].price;
//                 }
//                 echarts_3(x, y);

//                 // ===================第三层
//                 axios.get(base_url + 'countYear')
//                     .then(function (res) {

//                         // ===============第四层
//                         axios.get(base_url + 'region_households_num')
//                             .then(function (res) {

//                                 console.log(res.data.data)
//                             })
//                         console.log(res.data.data)
//                         data_4 = res.data.data
//                         x = [], y = []
//                         for (var i = 10; i < data_4.length; i++) {//分离横纵轴数据
//                             x[i - 10] = String(data_4[i].years).substring(2);
//                             y[i - 10] = data_4[i].num;
//                         }
//                         echarts_4(x, y)
//                     })

//             })

//     })
//
// -------------------------------------vue--------------------------------
// 排行榜数据
var app = new Vue({
    el: "#app", //设置挂载点
    data: {
        list: [],
        data1: [],
        data2: [],
        data3:[], //成都的价格
        data4:[] //上海的价格
    },
    methods: {
        //dom中可以使用的函数
        getListData: async function () {
            await axios.get(base_url + 'rank')
                .then(res => {

                    this.list = res.data.data;
                })
        }
        ,
        get_househodes_price_region_axoius1: async function (url) {  //异步方法 //

            await axios.get(url)
                .then(res => {
                    this.data1 = res.data.data;
                }, err => {
                    console.log(err)
                }
                );


        },
        get_househodes_price_region_axoius2: async function (url) {  //异步方法

            await axios.get(url)
                .then(res => {
                    this.data2 = res.data.data;
                }, err => {
                    console.log(err)
                }
                );


        }
        ,
        get_peice_sh_cd: async function(url1,url2){
            await axios.get(url1)
            .then(res => {

                this.data3 = res.data.data;
            }, err => {
                console.log(err)
            }
            );

            await axios.get(url2)
            .then(res => {
                this.data4 = res.data.data;
            }, err => {
                console.log(err)
            }
            );
        }

    }

})

/*----------------------echarts 渲染--------------------------------------*/
requestSomething()  //请求数据以及渲染图形

/*------------------------------*/
//分别对应echarts 1234
var url_lib = ['house_type', 'region_price', 'region_price', 'countYear', 'year_reg_price', 'year_price'
                ,'area_number',
] 




/*----------------
axious asyng 请求

----------*/
// 如果想要等数据返回后再执行后面的代码，那么就要使用 async/await
async function requestSomething() { //一同函数
    await app.getListData();
    // 这时something会等到异步请求的结果回来后才进行赋值，同时不会执行之后的代码
    for (var i = 0; i < url_lib.length; i++) {
        if (url_lib != '')
            await getData(base_url + url_lib[i], i); //同步等待

    }

    // 获取echart8 所需要的数据
    await app.get_househodes_price_region_axoius1(base_url + 'region_households_num');
    await app.get_househodes_price_region_axoius2(base_url + 'region_price');

    echarts_8(app.data1, app.data2)

    //获取echarts7所需的数据 成都与上海历年房价对比
    await app.get_peice_sh_cd(base_url+'year_price_cd',base_url+'year_price_sh');

    echarts_7(app.data3, app.data4) //渲染

    echarts_10();

}



async function getData(url, i) {  //异步方法
    await axios.get(url)
        .then(res => {
            setData(res.data.data, i)
        }, err => {
            console.log(err)
        }
        );
}




function setData(data, i) {
    switch (i + 1) { //分别是echarts 1 2 3 4 - n 由于 i 从0 开始 则需要加1
        // 这里都是穿的 data 数组进去 然后在echarts_i里面进行 数据的处理 以及渲染
        case 1:
            echarts_1(data)
            break;
        case 2:
            echarts_2(data) //灯笼的地图展示
            break;
        case 3:
            echarts_3(data)
            break;
        case 4:
            echarts_4(data)
            break;
        case 5:
            echarts_5(data)
            break;
        case 6:
            echarts_6(data)
            break;
        case 7:
            echarts_9(data)
            break
    }


}





